package com.atom.app.mvvm.abase

import com.atom.module.mvvm.base.viewmodel.AbstractBaseViewModel
import com.atom.module.mvvm.base.ApiModel
import io.reactivex.rxjava3.disposables.CompositeDisposable
import io.reactivex.rxjava3.disposables.Disposable

abstract class BaseKingViewModel<M : ApiModel>(model: M) : AbstractBaseViewModel<M>(model) {

    private val mCompositeDisposable = lazy {
        CompositeDisposable()
    }

    fun addSubscribe(disposable: Disposable) {
        mCompositeDisposable.value.add(disposable)
    }

    override fun onCleared() {
        super.onCleared()
        mCompositeDisposable.value.clear()
    }

}
